// #define print(...)

// #define print(...)
class Solution {
public:
	long long maxMatrixSum(vector<vector<int>>& matrix) {
		long long ans = 0;
		int n = 0; // 负数个数
		int t = INT_MAX;// 最小绝对值
		for(auto & row : matrix){
			for(auto & v : row){
				if(v<0){
					n++;
					if(-v<t) t = -v;
					ans -= v;
				}else{
					if(v<t) t = v;
					ans += v;
				}
				// print("v=", v, ", t=", t, ", ans=", ans, "\n")
			}
		}
		print("n=", n, "\n")
		if(n%2) return ans - 2*t;
		return ans;
    }
};
